In order to query a database for a subset of the data stored therein, it is necessary to create a database query. This often requires a user to create a query definition in the form of a complex declarative query statement. For instance, in some systems it may be necessary for a user to create a Structured Query Language (“SQL”) statement in order to select a subset of the contents of a database. Creation of such statements generally requires the user to not only understand SQL, but also requires the user to understand the structure of the database. As a result, creation of such statements is often too complex for many computer users.
Many different graphical user interfaces (“GUIs”) have been created in order to simplify the process of creating a database query. For instance, a Query By Example (“QBE”) user interface allows the creation of database queries using examples based on a text string, the name of a document, or a list of documents. While these previous user interfaces, like QBE, are easier than manually creating SQL statements, these user interfaces are still very abstract and frequently require the user to understand the structure of the database that is being queried. As a consequence, it can still be very difficult for a user to create a database query even when utilizing previous GUIs for creating database queries.
It is with respect to these considerations and others that the disclosure made herein is presented.